🚇 untun
Tunnel your local HTTP(s) server to the world!
Powered by 🔥 Cloudflare Quick Tunnels and used by 👂 unjs/listhen.
Usage (CLI)
Globally run tunnel with npx
:
npx untun@latest tunnel http://localhost:3000
◐ Starting cloudflared tunnel to http://localhost:3000
ℹ Waiting for tunnel URL...
✔ Tunnel ready at https://unjs-is-awesome.trycloudflare.com
Use npx untun tunnel --help
for more usage info.
Usage (API)
Install package:
npm install untun
yarn add untun
pnpm install untun
Import:
import { startTunnel } from "untun";
const { startTunnel } = require("untun");
Start tunnel:
const tunnel = await startTunnel({ port: 3000 });
Options
url
- Default:
{protocol}://{hostname}:{port}
The local server URL to tunnel.
port
The local server PORT (only effective if url
is not provided).
hostname
The local server hostname (only effective if url
is not provided).
protocol
The local server protocol (only effective if url
is not provided).
verifyTLS
Verify local server TLS certificate.
acceptCloudflareNotice
- Default:
false
- Environment variable:
UNTUN_ACCEPT_CLOUDFLARE_NOTICE
Accept cloudflare TOS by default.
Development
- Clone this repository
- Install latest LTS version of Node.js
- Enable Corepack using
corepack enable
- Install dependencies using
pnpm install
- Run interactive tests using
pnpm dev
License
Made with 💛
Published under MIT License.
cloudflared integration based on a fork of JacobLinCool/node-cloudflared
Your installation of cloudflared software constitutes a symbol of your signature indicating that you accept the terms of the Cloudflare License, Terms and Privacy Policy.